
/**
 * 代码项类型定义
 * @property {string} [lang = 'html'] - 代码语言
 * @property {string} [language = 'html'] - 代码语言
 * @property {string} [content] - 代码内容
 */
export interface TuiCodeItem {
  lang?: string;
  language?: string;
  content?: string;
}

/**
 * 代码组件属性类型定义
 * @property {TuiCodeItem} [code] - 代码项
 * @property {TuiCodeItem.lang} [lang = code.lang || 'html'] - 代码语言
 * @property {TuiCodeItem.language} [language = code.language || 'html'] - 代码语言
 * @property {TuiCodeItem.content} [content] - 代码内容
 * @property {boolean} [inline = true] - 是否内联显示
 * @property {boolean | string} [copy = true] - 是否显示复制按钮，可选字符串为自定义复制文本
 */
export type TuiCodeProps = TuiCodeItem & {
  code?: TuiCodeItem;
  inline?: boolean;
  copy?: boolean | string;
}

// 移除单独的TuiCodeEmits接口定义，改为在组件中直接使用defineEmits类型参数